Link discovery and verification using loss of light

ABSTRACT

Systems and methods for link discovery and verification that minimize the need for line termination resources to generate and interpret packets. According to one aspect of the present invention, a method for operating a first node in a data communication network to verify connectivity to a second node includes sending a request for verification of connectivity to the second node that identifies an IP address of the first node, a port of the first node, and an IP address of the second node. The method also includes toggling a signal emitted by the port, and notifying the second node of a toggling mode of the port. Finally, the method includes receiving a first message from the second node indicating whether the second node detected the toggling. The request for verification of connectivity is sent on a control channel via a control message separate from the signal and the first message.

CROSS REFERENCE TO RELATED APPLICATION

This U.S. Patent Application is a continuation of co-pending U.S. patentapplication Ser. No. 09/968,096, filed Sep. 28, 2001, which isincorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

The present invention relates to data communication networks, and moreparticularly to systems and methods for discovering and verifying linksbetween nodes.

Internet traffic is typically forwarded from a source to a destinationthrough a series of nodes connected by links. The nodes representnetwork devices such as routers, switches, etc. The links are physicalmedia such as optical fiber, twisted pair, etc. and often connect a pairof nodes. Various protocols that control the forwarding of packetsthrough a network depend on each node having a correct understanding ofthe links available to its immediate neighbors.

Typically, discovery and/or verification of a link between two nodes isaccomplished by an exchange of packets over the link. As will now beexplained, however, this exchange of packets is problematic for animportant new class of network devices.

To accommodate increasing volumes of network traffic, the Internet isrelying more and more on the vast bandwidth of optical fiber media.Routing and switching operations, however, have largely remained in theelectrical domain. The need to convert optical signals to electricalform and then perform switching and/or routing computations on theelectrical signals has become a bottleneck for optical networks. Inorder to remove this bottleneck, all-optical cross-connects (OXCs) haveemerged as an important building block for optical networks. In an OXC,optical inputs and outputs are coupled to one another through aswitching matrix without intermediate conversion to an electricalsignal. Since the optical signals pass through untouched, OXCs do notincorporate expensive hardware either for conversion to electrical formand reconversion to optical form, or for processing packets inaccordance with a protocol. This results in enormous savings in cost andextremely high throughput. Another advantage of the OXC is that itrequires no special adaptation to the protocol or data rate of the datacarried by the switched optical signals.

To best integrate OXCs into the Internet, it is desirable to discoverand verify links to and from them. However, if an OXC is to exchangepackets with its neighbors for the purpose of link discovery andverification according to conventional techniques, it will have toincorporate line termination capability, i.e., the ability to generateand interpret packets in accordance with a protocol used by a neighbor.Supporting this capability will require that a line termination unit(LTU) capable of generating and interpreting packets according to therelevant protocol be incorporated within the OXC. To maximize the numberof protocols which use an OXC, it will be desirable to incorporate aseparate line termination unit (LTU) for each anticipated protocol thatmight be terminated by a neighboring node. Each LTU would incorporatethe electrical to optical and the optical to electrical conversioncircuitry as well as high speed packet processing that would otherwisebe made unnecessary by use of the OXC.

Furthermore, when a particular OXC switch port is having its neighborconnectivity verified, that port must be switched to another portconnected to the correct LTU so that the appropriate packets may beexchanged. Thus, each LTU that is needed consumes a port and also asignificant percentage of the available switching resources. It becomesclear then that current link discovery and verification techniques areexpensive to apply to optical switching equipment that is not otherwisecapable of originating and/or interpreting packets via optical links.

Another type of device that is finding increasing application on theInternet is the dense wave division multiplexer (DWDM) that multiplexessignals from several incoming fibers onto multiple wavelengths on thesame fiber and demultiplexes multiple wavelength components carried bythe same fiber onto separate fibers. By allowing the combining ofnumerous signals on the same fiber, DWDMs greatly expand thetransmission capacity without increasing the data rate of individualoptical signals, thus simplifying the electronics needed to generate andinterpret the payload data streams modulated onto the optical signals.DWDMs are also preferably insensitive to protocol and data rate.

DWDMs, depending on the application, may or may not incorporate hardwareto convert optical signals to electrical signals and vice versa.However, DWDM equipment does not typically include the capability toterminate packets that are being carried by optical signals. As withOXCs, this represents an obstacle to current link discovery andverification techniques.

What is needed are systems and methods for link discovery andverification that minimize the needed line termination resources and arethus suitable for implementation on devices that do not otherwiseprovide extensive line termination capabilities such as OXCs and DWDMs.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an optical cross-connect (OXC) suitable for implementingone embodiment of the present invention.

FIGS. 2A-2B depict a dense wave division multiplexer (DWDM) suitable forimplementing one embodiment of the present invention.

FIG. 3 is a flowchart describing steps of link verification using lossof light according to one embodiment of the present invention.

FIG. 4 depicts a link verification situation where loss of lighttechniques may be used according to one embodiment of the presentinvention.

DETAILED DESCRIPTION

The present invention finds application in networks where it isdesirable for nodes to discover and verify links among themselves.Wherever the terms “verify” or “verification” are used, it will beunderstood that the present invention also applies to the discovery oflinks. One particular application of the present invention is to opticalnetwork devices such as optical cross-connects (OXCs) and dense wavedivision multiplexers (DWDMs) that require link verification yet areoften unable to terminate packets.

Before describing details of link verification operation according tothe present invention, the structures of representative nodes that mayparticipate in link verification schemes will be described. FIG. 1depicts an all-optical cross-connect (OXC) 100 suitable for implementingone embodiment of the present invention. An OXC 100 providesconnectivity between a plurality of inputs 102 and a plurality ofoutputs 104. These are understood to be optical inputs and opticaloutputs. A photodetector 103 is coupled to each of inputs 102. Any oneof inputs 102 may be selectively coupled to any one of outputs 104through an all-optical switching fabric 106. Switching fabric 106 haseight ports each including one input and one output. The input to a port8 is connected to a laser 108.

Switching fabric 106 is implemented by e.g., a MEMS integrated circuitthat uses adjustable mirrors to guide light from a desired input to thedesired output. A representative switching fabric is the PDS-002 modelavailable from OMM, Inc. of San Diego, Calif. Any suitable technologymay be used to implement switching fabric 106. A control processor 110selects a mapping of inputs to outputs. Control processor 110 may beimplemented in any suitable manner such as e.g., a general programmableprocessor, custom logic, multiprocessor system, or any combinationthereof. Processor 110 may execute software instructions in any suitablemachine level or high level programming language. Storage medium 112 maystore instructions for control processor 110. Storage medium 112 mayrepresent a memory device such as a random access memory device,magnetic storage medium, an optical storage medium, etc. Instructions onstorage medium 112 may be loaded from another storage medium such ase.g., a compact disc (CD), a digital video disc (DVD), a floppy disc,etc. Another example of loading instructions from another storage mediumis receiving code via a network.

Control packets used in implementing one embodiment of the presentinvention may be transmitted and received via a control interface 114.Control interface 114 may be e.g., an Ethernet interface, a SONETInterface, etc. Control interface 114 may also receive control packetsto direct the mapping between inputs 102 and outputs 104.

Referring now to FIGS. 2A-2B, a dense wave division multiplexer (DWDM)200 suitable for implementing the present invention is depicted. FIG. 2Adepicts a portion of DWDM 200 where multiple optical signals arecombined onto the same fiber. FIG. 2B depicts a portion of DWDM 200 thatoperates in the reverse direction, extracting multiple wavelengthcomponents from a single fiber and separating them onto multiple fiberseach carrying a single wavelength. For ease of illustration, FIG. 2A-2Bassume a system that combines 3 wavelengths on a single fiber but itwill of course be appreciated that DWDM techniques apply to any numberof wavelengths.

In FIG. 2A, each incoming optical signal is input to anoptical-to-electrical conversion (o/e/o) block 202. Each o/e/o block 202incorporates a photodetector to convert the optical signal to electricalform and a laser to regenerate the optical signal. The o/e/o block 202may also position its output in the frequency domain in accordance withan operative wavelength division multiplexing scheme. To support linkverification in accordance with the present invention, o/e/o block 202is capable of sensing the presence or absence of light on its input. Thevarious outputs of o/e/o blocks 202 are combined onto the same fiber bya multiplexer 204.

In FIG. 2B, a demultiplexer 206 receives a wavelength divisionmultiplexed signal including multiple wavelength components and outputsthe components on separate fibers. A set of o/e/o blocks 208 convert thedemultiplexed optical signals to electrical form and then regeneratethem optically onto wavelengths appropriate for reception by otherhardware. The o/e/o blocks 208 incorporate photodetectors to convertfrom optical to electrical and lasers to regenerate the optical signals.

A control processor 210 interacts with o/e/o blocks 202 and o/e/o blocks208 to monitor and control activity. According to one embodiment of thepresent invention, control processor 210 may direct any of o/e/o blocks208 to turn light output on or off to support link verification.Furthermore, control processor 210 is capable of monitoring whetherlight energy is present at the inputs of o/e/o blocks 202. Controlprocessor 210 may be implemented, e.g., in any of the ways discussed inreference to control processor 110. Also, as with control processor 110,instructions for control processor 210 may be stored on acomputer-readable storage medium 212 or loaded from another storagemedium. Control interface 214 may, similarly to control interface 114,exchange control packets to support link verification, or also receiveinstructions concerning the overall operation of DWDM 200.

Now that the structures of representative participating nodes have beendescribed, link verification according to one embodiment of the presentinvention will be described with reference to an example situationdepicted in FIG. 4. In FIG. 4, OXCA is to verify links with OXCB. OXCAand OXCB are depicted as exchanging four optical signals that arewavelength multiplexed onto the same fiber by the operation of DWDM's M1and M2. Thus, four ports (input and output) of OXCA are coupled to fourports of M1 (input and output) while four ports of OXCB (input andoutput) are coupled to four ports of M2 (input and output).

FIG. 3 is a flowchart describing steps of link verification between OXCAand OXCB according to one embodiment of the present invention. Detailsof link verification operation will be described in terms of anextension of the Link Management Protocol (LMP) which is described inLang, et al. Link Management Protocol (LMP) Internet Draft, InternetEngineering Task Force, July 2001, the contents of which are hereinincorporated in their entirety by reference for all purposes. Thepresent invention may also be implemented without employing LMP.

Since OXCA is not directly coupled to OXCB but rather coupled to OXCBthrough M1 and M2, link verification between OXCA and OXCB isaccomplished by first verifying between OXCA and M1 and between OXCB andM2 and then establishing a mapping based on the wavelength assignmentsin place between M1 and M2. At step 302, OXCA requests verification withM1. This request is sent through the control channel rather than throughany of the optical connections between OXCA and M1 and identifies the IPaddresses of OXCA and M1 as well as which port OXCA will be verifyingconnectivity through. M1 responds at step 304 by sending an LMP message,VerifyTransportMechanism, through the control channel, that is extendedaccording to the present invention to designate loss-of-light as theverification mechanism. Instead of sending test packets via the portbeing verified as would be done in accordance with LMP, OXCA, at step306, toggles the light output by the port under test. Simultaneously,OXCA sends OXCB control messages via the control channel indicatingwhether the light is currently on or off. The frequency of togglingshould preferably be sufficiently low for the control messages for thesynchronized control messages to be communicated and processed.

In order to perform the toggling function, switching fabric 106 may beused to alternately connect and disconnect the output of the port undertest to port 8 which is hardwired to laser 108. Alternatively, laser 108may be switched on and off to achieve the desired toggling.

At step 308, M1 monitors its input ports to look for the toggling effectcaused by OXCA. Ml will monitor the light on or light off condition ofeach port to identify a particular port that it is indeed synchronizedwith the control messages generated by OXCA. Alternatively, it is alsopossible to communicate an aperiodic toggling pattern or apseudorandomly generated toggling pattern to M1 instead of communicatingcontrol messages synchronized with the toggling. M1 would then seek tomatch any detected toggling to the pattern. If no toggling has beendetected on any of M1's ports, processing proceeds to a step 310 and thetest fails. M1 sends an LMP TestStatusFailure message indicating thefailure to OXCA via the control channel.

If, however, M1 has detected toggling through a particular one of itsports at step 308, then a link between OXCA and M1 has been verified.Then, at step 312, M1 sends OXCA, via the control channel, an LMPTestStatusSuccess message identifying the ports that have been verifiedas linked. The TestStatusSuccess message may also identify thewavelength to which M1 assigns the verified port.

After either step 312 or step 310, link verification proceeds to a step314 which tests whether OXCA has verified connectivity to M1 through allof its available ports already. If OXCA has not, then processing returnsto step 302 for verification of the mapping of the next available port.If however, all of the available ports on OXCA have been mapped to M1,execution proceeds to a step 316. Although step 316 is depicted asfollowing the previously discussed steps, it will be appreciated that itmay also occur in parallel.

At step 316, OXCB verifies its connectivity to M2, establishing asimilar mapping of its ports to the ports of M2 using the same procedurethat has been described with reference to OXCA and M1.

At the completion of step 316, OXCA is aware of the mapping of its portsto the ports of M1, while OXCB is aware of the mapping of its ports toM2. This also includes an awareness of the particular wavelengthsassociated with each relevant port of M1 such that each port of OXCA hasthereby been mapped to a wavelength on the line connecting M1 and M2.Similarly, each port on OXCB has also now been associated with awavelength on the line coupling M1 and M2. It is therefore now possibleby analyzing this wavelength mapping, to establish the port mappingbetween OXCA and OXCB.

In one embodiment, LMP LinkSummary messages are used to establish theport mapping. For example, at step 318, OXCA sends OXCB a series ofLinkSummary messages via the control channel indicating the mappingbetween the ports of OXCA and the various wavelengths. Similarly, alsoat step 318, OXCB sends OXCA its own mapping between the ports of OXCBand the various associated wavelengths. Based on this exchange ofinformation, either OXCA or OXCB determines the mapping between ports ofOXCA and ports of OXCB and communicates this mapping to the other OXC atstep 320, using a LinkSummary message.

It should be noted that although the above process has been describedwith reference to OXCs performing toggling and DWDMs detecting thistoggling, the present invention also contemplates that toggling may bedetected by the OXCs through, e.g., one of photodetectors 103 coupled toinputs 102 in FIG. 1. Also, the present invention is not restricted tooptical devices and toggling light but will find application, e.g.,wherever a signal may be turned on or off.

An advantageous modification to the link verification techniquedescribed above is for a single node to simultaneously toggle lightthrough multiple ports. This greatly increases the speed of linkverification. Toggling will then preferably be coordinated so that themonitoring node can distinguish among the multiple toggled lightsignals. For example, instead of sending control messages indicating the“light on” or “light off” state of each port, a single control messagemay include a bitmap that gives the current “light on” or “light off'state of each toggling port. By performing verification throughmultiple ports in parallel and aggregating current light stateinformation into a single control message, one can greatly reduce themessage exchanges needed to map ports.

Consider a situation where the toggling node has 8 ports. The senderfirst disables light on ports 0-3, enable light on ports 4-7 and sendthe value 0xF0 (hex) via the control channel as a bitmap where “0”indicates the absence of light and “1” the presence of light. Once thelight status had been recorded on the monitoring node, the toggling nodechanges to the next pattern, for example, disabling light on ports0,1,4, and 5 and enabling light on ports 2,3,6 and 7 resulting in abitmap of 0xCC (hex). Each change in pattern is signaled by a controlmessage including the currently operative bitmap. By activating anddeactivating light at the various ports in accordance with the bitmapsin the series, 0xF0, 0xCC, 0xAA, and 0x55, the monitoring node maps alleight ports with a sequence of only 4 patterns. Using this technique, 16ports can be distinguished using a sequence of only 5 patterns, 32 portsusing 6 patterns, etc.

With the above-described modification, the time necessary to verifylinks from a node having p ports will vary roughly with ln(p). Bycontrast, with the technique specified by LMP, link verification timevaries roughly with p². The present invention thus provides enormousadvantages in applications where nodes have a large number of ports,e.g., 512 ports.

In one embodiment, where line termination capability is available, lossof light is used as an extension to LMP verification techniques thatrely on exchanging data packets via the tested ports rather than througha control channel as described above. Considering the proceduredescribed above for link verification between OXCA and M1, one could usethe loss of light technique that has been described to eliminate theports on M1 that do not detect toggling and then use the verificationtechniques provided by LMP to further verify the link to the port thatdoes detect toggling. This can greatly increase the speed ofverification, especially where there are large numbers of ports to betested.

The present invention thus provides rapid link verification without theneed to terminate packets in accordance with any particular protocol.Alternatively, existing link verification techniques may be accelerated.

It is understood that the examples and embodiments that are describedherein are for illustrative purposes only and various modifications arechanges in light there of will be suggested to persons skilled in theart and are to be included within the spirit and purview of thisapplication and scope of the appended claims and their full scope ofequivalents. For example, although optical cross-connects and DWDMs havebeen described as representative nodes that may implement the linkverification techniques described herein, the present invention may beapplied to any suitable network device including, e.g., IP switches, ATMswitches, SONET TDM add/drop multiplexers, optical packets switches,optical packet routers, etc. Also, the term “port” may refer to alogical port as well as a physical port.

1. A method for operating a first node in a data communication networkto verify connectivity to a second node in said data communicationnetwork, said method comprising: sending a request for verification ofconnectivity to said second node, said request for verification ofconnectivity identifying an IP address of said first node and an IPaddress of said second node, said request for verification ofconnectivity further identifying a port of said first node; toggling asignal emitted by said port of said first node; notifying said secondnode of a toggling mode of said port to facilitate connectivityverification; and receiving a first message from said second nodeindicating whether said second node detected said toggling, said requestfor verification of connectivity identifying said first node being senton a control channel via a control message separate from said signal andsaid first message being sent on said control channel.
 2. The method ofclaim 1 wherein if said first message indicates that said second nodedetected said toggling, said first message identifies a property whichthe second node assigns said port of said first node.
 3. The method ofclaim 1 further comprising: simultaneous with toggling of said signalemitted by said port of said first node, toggling another signal emittedby another port of said first node.
 4. The method of claim 1 furthercomprising: sending notifications from said first node to said secondnode as said signal toggles on and off to facilitate connectivityverification.
 5. The method of claim 1 wherein said signal comprises aselected wavelength component of a WDM signal.
 6. The method of claim 1wherein toggling comprises: turning said signal on and offaperiodically.
 7. The method of claim 1 wherein toggling comprises:turning said signal on and off in accordance with a pseudorandomlyselected sequence of intervals.
 8. A method for operating a first nodein a data communication network to verify connectivity to a second nodein said data communication network, said method comprising: receiving arequest for verification of connectivity from said second node on acontrol channel, said request for verification of connectivityidentifying an IP address of said second node and an IP address of saidfirst node, said request for verification of connectivity furtheridentifying a port at said second node; detecting toggling of a signalreceived at a port of said first node; verifying a link to said secondnode by matching said toggling to a known toggling mode of said port atsaid second node; and sending a message to said second node indicatingwhether said first node matched said toggling to said known togglingmode, said message being sent on said control channel.
 9. The method ofclaim 8 wherein if said message indicates that said first node matchedsaid toggling to said known toggling mode, said message identifies aproperty which said first node assigns said port at said second node 10.The method of claim 8 further comprising: simultaneously with detectingtoggling of said signal received at said port of said first node,detecting toggling of another signal received at another port of saidfirst node; and verifying an additional link to said second node bymatching said toggling of another signal to a known toggling mode of anadditional port at said second node.
 11. The method of claim 8 whereinverifying comprises: receiving messages from said second node indicatingwhen a toggled signal transmitted by said second node has been turned onand turned off; and matching said messages to on and off states of saidsignal received at said port of said first node.
 12. The method of claim10 wherein receiving messages comprises: receiving messages through acontrol channel.
 13. An apparatus for operating a first node in a datacommunication network to verify connectivity to a second node in saiddata communication network, said apparatus comprising: a processor thatsends a request for verification of connectivity to said second node,said processor being arranged to toggle a signal emitted by a port ofsaid first node, said request for verification of connectivity beingarranged to identify an IP address of said first node, an IP address ofsaid second node, and said port; and a control interface that notifiessaid second node of a toggling mode of said port to facilitateconnectivity verification, wherein said request for verification is senton a control channel via a control message separate from said signal.14. The apparatus of claim 13 wherein said control interface sendsnotifications from said first node to said second node as said signaltoggles on and off to facilitate connectivity verification.
 15. Theapparatus of claim 13 wherein said signal comprises a selectedwavelength component of a WDM signal.
 16. The apparatus of claim 13wherein said processor toggles by turning said signal on and offaperiodically.
 17. The apparatus of claim 13 wherein said processortoggles by turning said signal on and off in accordance with apseudorandomly selected sequence of intervals.
 18. An apparatus foroperating a first node in a data communication network to verifyconnectivity to a second node in said data communication network, saidapparatus comprising: a photodetector that detects toggling of a signalreceived at a port of said first node; and a processor that receives arequest for verification of connectivity at said second node andverifies a link to said second node by matching said toggling to a knowntoggling mode of a port at said second node, wherein said request forverification comprises identification of an IP address of said firstnode, an IP address of said second node, and a port over whichconnectivity verification is to be performed and wherein saididentification of said IP address of said first node, said IP address ofsaid second node, and said port is received on a control channel via acontrol message separate from said signal.
 19. The apparatus of claim 18wherein said processor receives messages from said second nodeindicating when a toggled signal transmitted by said second node hasbeen turned on and turned off and matches said messages to on and offstates of said signal received at said port of said first node.
 20. Theapparatus of claim 18 wherein said messages are received through acontrol channel.
 21. An apparatus for operating a first node in a datacommunication network to verify connectivity to a second node in saiddata communication network, said apparatus comprising: means for sendinga request or verification of connectivity to said second node, saidrequest for verification of connectivity identifying an IP address ofsaid first node and an IP address of said second node, said request forverification of connectivity further identifying a port of said firstnode; means for toggling a signal emitted by said port of said firstnode; means for notifying said second node of a toggling mode of saidport to facilitate connectivity verification; and means for receiving afirst message from said second node indicating whether said second nodedetected said toggling, said request for verification of connectivityidentifying said first node being sent on a control channel via acontrol message separate from said signal and said first message beingsent on said control channel.
 22. The apparatus of claim 21 wherein ifsaid first message indicates that said second node detected saidtoggling, said first message identifies a property which the second nodeassigns said port of said first node.
 23. The apparatus of claim 22further comprising: means for sending notifications from said first nodeto said second node as said signal toggles on and off to facilitateconnectivity verification.
 24. An apparatus for operating a first nodein a data communication network to verify connectivity to a second nodein said data communication network, said apparatus comprising: means forreceiving a request for verification of connectivity from said secondnode on a control channel, said request for verification of connectivityidentifying an IP address of said second node and an IP address of saidfirst node; means for detecting toggling of an optical signal receivedat a port of said first node; and means for verifying a link to saidsecond node by matching said toggling to a known toggling mode of saidport at said second node, wherein said request for verificationcomprises identification of an IP address of said first node, an IPaddress of said second node, and a port over which connectivityverification is to be performed and wherein said identification of saidIP address of said first node, said IP address of said second node, andport information is received on a control channel via a control messageseparate from said signal.
 25. A computer program product for operatinga first node in a data communication network to verify connectivity to asecond node in said data communication network, said computer programproduct comprising: code that receives a request for verification ofconnectivity from said second node, said request for verification ofconnectivity identifying an IP address of said first node and an IPaddress of said second node; code that detects toggling of a signalreceived at a port of said first node; code that verifies a link to saidsecond node by matching said toggling to a known toggling mode of a portat said second node, wherein said request for verification ofconnectivity identifying said IP address of said first node, said IPaddress of said second node, and said port of said second node is senton a control channel via a control message separate from said signal;and a computer-readable storage medium that stores the codes.
 26. Acomputer program product for operating a first node in a datacommunication network to verify connectivity to a second node in saiddata communication network, said computer program product comprising:code that is configured for sending a request for verification ofconnectivity to said second node on a control channel, said request forverification of connectivity identifying an IP address of said secondnode and an IP address of said first node; code that toggles a signalemitted by a port of said first node; code that notifies said secondnode of a toggling mode of said port to facilitate connectivityverification, wherein said request for verification comprisesidentification of said IP address of said first node, said IP address ofsaid second node, and said port at said second node over whichconnectivity verification is to be performed and wherein saididentification of said IP address of said first node, said IP address ofsaid second node, and said port at said second node is received on acontrol channel via a control message separate from said signal; and acomputer-readable storage medium for storing the codes.